//
// Created by iguilty on 2022-01-13.
//

#ifndef DESIGN_PATTERN_CPP_ADAPTER_H
#define DESIGN_PATTERN_CPP_ADAPTER_H

class Target
{
public:
    Target();
    virtual ~Target();
    virtual void Request();
};

class Adaptee{
public:
    Adaptee();
    ~Adaptee();
    void SpecificRequest();
};

class Adapter:public Target{
public:
    Adapter(Adaptee* adaptee);
    ~Adapter();
    void Request();

private:
    Adaptee* _adaptee;
};

#endif //DESIGN_PATTERN_CPP_ADAPTER_H
